package com.zqh.template.enums;


import cn.hutool.core.util.ObjectUtil;
import com.zqh.meta.enums.FileGenerateTypeEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.var;

import java.io.File;

/*
 * @description: 文件范围枚举
 * @author: zqh
 * @dateTime: 2025/2/20 18:16
 */
@AllArgsConstructor
@Getter
public enum FileFilterRangeEnum {

    FILE_NAME("文件名称","fileName"),
    FILE_CONTENT("文件内容","fileContent");

    private final String text;
    private final String value;


    // 根据传入的字符串值查找对应的枚举常量
    public static FileFilterRangeEnum getEnumByValue(String value) {

        // 1.空值防御：如果输入值为空或空字符串，直接返回null
        if (ObjectUtil.isEmpty(value))  return null;

        // 2.遍历枚举：遍历该枚举类型的所有实例
        for (var anEnum : FileFilterRangeEnum.values()) {
            // 3.值匹配：检查当前枚举实例的值是否与输入值匹配
            if (anEnum.getValue().equals(value))  return anEnum;
        }
        // 4.未找到匹配项：遍历完所有枚举常量仍未找到时返回null
        return null;
    }



}
